package com.fusetech.flow.audit.service.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fusetech.os.core.query.Query;
import com.fusetech.os.core.query.QueryType;
import com.fusetech.os.core.service.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;

/**
 * 审核节点配置表DTO
 * @author Liuwq
 * @version 2023-05-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class AuditNodeDTO extends BaseDTO {

	private static final long serialVersionUID = 1L;

	        
	/**
     * audit_process_id
     */
    @Query(tableColumn = "a.audit_process_id", javaField = "auditProcess.id", type = QueryType.EQ)
	//@ExcelProperty(value = "audit_process_id", converter = ExcelFieldDTOConverter.class)
	//@ExcelFieldProperty(value = "", service =  "com.zxhy.erp.service.AuditProcessService", wrapper= "com.zxhy.erp.service.mapstruct.AuditProcessWrapper")
	private AuditProcessDTO auditProcess;

	private String auditProcessId;
	        
	/**
     * node_name
     */
	@NotNull(message="node_name不能为空")
    //@Query(tableColumn = "a.node_name", javaField = "nodeName", type = QueryType.LIKE)
	@ExcelProperty("node_name") 
	private String nodeName;
	        
	/**
     * node_id
     */
	@ExcelProperty("node_id") 
	private String nodeId;
	        
	/**
     * form_id
     */
	@ExcelProperty("form_id") 
	private String formId;
	        
	/**
     * 审核人员 ID
     */
	@ExcelProperty("审核人员 ID") 
	private String auditorId;
	        
	/**
     * 发起角色
     */
	@ExcelProperty("发起角色") 
	private String auditorRoleUser;
	        
	/**
     * 备注
     */
	@ExcelProperty("备注") 
	private String remark;
	        
	/**
     * 逻辑删除标记（0：显示；1：隐藏
     */
	@ExcelProperty("逻辑删除标记（0：显示；1：隐藏") 
	private String isDel;

}
